package com.cskaoyan.javase.oop1._14import.extend;
// 智能导入two包下的所有类

import com.cskaoyan.javase.oop1._14import.two.*;

import java.util.*;

// import com.cskaoyan.javase.oop1._14import.two.Teacher;

/**
 * 智能导入
 * import关键字存在智能导包的形式，会智能的根据需要导入需要的某个类
 * 它的语法是这样的：
 * import + 包名.*;
 * 其中"*"具有通配的含义，表示该包的类都会根据需要导入。
 *
 * 理解智能导入,最重要的是理解何为根据需要:
 *      如果一个类不进行导入,代码编译不通过,则会进行导入
 *      反之如果一个类不进行导入,代码照样运行,则不会进行导入
 *
 *
 * @since 11:20
 * @author wuguidong@cskaoyan.onaliyun.com
 */
public class Demo {
    public static void main(String[] args) {
        new Student().test();
        new Teacher().test();
    }
}
// 当你在一个Java文件同包下,存在同名class时,再尝试从外部(不同包)导入该同名类,就会编译报错,告诉你同一个编译单元下,已经存在这个类了
// 'Teacher' is already defined in this compilation unit
// 一个Java文件是一个编译单元,一个编译单元下可以有很多个class,这时从外界再导入同名类,Java语法是不允许.
class Teacher {
    public void test() {
    }
}